package com.itheima.wemedia.service;

import com.itheima.common.vo.PageResultVo;
import com.itheima.wemedia.dto.DownOrUpDto;
import com.itheima.wemedia.dto.WmNewsDtoSave;
import com.itheima.wemedia.dto.WmNewsPageReqDto;
import com.itheima.wemedia.pojo.WmNews;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * @description <p>自媒体图文内容信息 业务接口</p>
 *
 * @version 1.0
 * @package com.itheima.wemedia.service
 */
public interface WmNewsService extends IService<WmNews> {

    /**
     * 文章分页查询
     * @param dto
     * @return
     */
    PageResultVo<WmNews> findPage(WmNewsPageReqDto dto);

    /**
     *发表文章
     * @param draft  true 草稿, false 提交审核
     * @param dtoSave
     */
    void submit(Boolean draft, WmNewsDtoSave dtoSave);

    /**
     *通过id查询自己发布的文章
     * @param wmNewsId
     * @return
     */
    WmNews getMyWmNewsById(Long wmNewsId);

    /**
     *通过id删除文章，只能删除自己的，已上架的文章不能删除
     * @param wmNewsId
     */
    void deleteById(Long wmNewsId);

    /**
     * 文章上下架操作
     * @param dto
     */
    void downOrUp(DownOrUpDto dto);
}
